package net.jlnx.Uebung2;

public class KapselAuto {
	private String hersteller;
	private long laufleistung;
	private double preis;
	private String farbe;
	private boolean unfallwagen;
	private String kraftstoff;
	private double leistung;

	public KapselAuto(String hersteller, long laufleistung, double preis,
			String farbe, boolean unfallwagen, String kraftstoff,
			double leistung) {
		this.hersteller = hersteller;
		this.laufleistung = laufleistung;
		this.preis = preis;
		this.farbe = farbe;
		this.unfallwagen = unfallwagen;
		this.kraftstoff = kraftstoff;
		this.leistung = leistung;
	}

	public String getHersteller() {
		return this.hersteller;
	}

	public long getLaufleistung() {
		return this.laufleistung;
	}

	public double getPreis() {
		return this.preis;
	}

	public String getFarbe() {
		return this.farbe;
	}

	public boolean isUnfallwagen() {
		return this.unfallwagen;
	}

	public String getKraftstoff() {
		return this.kraftstoff;
	}

	public double getLeistung() {
		return this.leistung;
	}

	public boolean isDiesel() {
		return this.kraftstoff.equalsIgnoreCase("diesel");
	}

	public boolean isElektro() {
		return this.kraftstoff.equalsIgnoreCase("elektro");
	}

	private String getUnfallStatus() {
		if (this.unfallwagen) {
			return "";
		} else {
			return "unfallfrei\n";
		}
	}

	public String toString() {
		StringBuilder ausgabe = new StringBuilder();
		ausgabe.append("---\n");
		ausgabe.append("Hersteller: " + this.hersteller + "\n");
		ausgabe.append("Preis: " + this.preis + "\n");
		ausgabe.append("Motor: " + this.leistung + " PS (" + this.kraftstoff
				+ ")\n");
		ausgabe.append("KM-Stand: " + this.laufleistung + " km\n");
		ausgabe.append("Farbe: " + this.farbe + "\n");
		ausgabe.append(this.getUnfallStatus());
		ausgabe.append("---\n");

		return ausgabe.toString();
	}

}